As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Hardware and software components of an information handling system may utilize computer applications such as computer programs to aid in performing their function. In running a computer program, a computer component may include an embedded microcontroller to perform several processing tasks at periodic intervals. Generally, some processing tasks are grouped to be performed at one periodic interval, while other tasks are performed at a different interval.
Often, a microcontroller may have to perform real-time processing tasks. Because the speed and power of a microprocessor is limited, a distributed workload is desirable for managing all these tasks. In certain instances, real-time processing tasks may have their processing time delayed because several non-real-time processing tasks are grouped to be performed during that particular periodic interval. Since these tasks may occur at one periodic interval, handling of tasks or groups of tasks can lead to spikes in the workload. For example, if a first group of processing tasks are to be processed every quarter second, and a second and third group are to be processed every half second and every second, respectively, then at every second interval, a microcontroller may process all of these tasks in a burst of activity.